import logging

import  redis


class Config(object):
    '''工程配置信息'''
    DEBUG = True
    #数据库的配置信息
    SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://root:python@localhost:3306/information'
    #关闭追踪数据库的修改
    SQLALCHEMY_TRACK_MODIFICATIONS = False

    #redis配置
    REDIS_HOST = '127.0.0.1'
    REDIS_PORT = 6379

    # session的SECRET_KEY 随机生成
    SECRET_KEY = 'JPJr1co9YiZQ8TWlQ8cHnYc4oXxhnhzlsVc3YWAndRtKFNbfpYv7N5fbMXdbWbf'

    # flask_session的配置信息
    SESSION_TYPE = 'redis'  #指定session保存到redis中
    #让cookie中的session_id被加密签名处理
    SESSION_USE_SIGNER = True

    #给session配置redis的操作对象
    SESSION_REDIS = redis.StrictRedis(host=REDIS_HOST, port=REDIS_PORT)
    #给session设置有效期
    PERMANENT_SESSION_LIFETIME = 86400*2


# 开发阶段配置类
class DevelopementConfig(Config):
    """开发模式下的配置"""
    DEBUG = True
    LOG_LEVEL = logging.DEBUG

# 生产阶段配置类
class ProductionConfig(Config):
    """生成模式下的配置"""
    DEBUG = True
    LOG_LEVER = logging.ERROR

# 定义配置字典
config = {
    "development":DevelopementConfig,
    "production" : ProductionConfig
}